home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tricks of the Mac Game Programming Gurus
/
TricksOfTheMacGameProgrammingGurus.iso
/
More Source
/
Libraries
/
PlayerPRO 4.4.1
/
Filters Plugs
/
MAD.h
< prev
next >
Wrap
Text File
|
1995-03-27
|
2KB
|
71 lines
/******************** ***********************/
//
// Player PRO 4.3x -- MAD Music Driver Definition
//
// Library Version 2.7
//
// To use with MusicLibrary for Think C & CodeWarrior
//
// Antoine ROSSET
// 16 Tranchees
// 1206 GENEVA
// SWITZERLAND
//
// FAX: (+41 22) 346 11 97
// Compuserve: 100277,164
// Internet: rosset@dial.eunet.ch
//
/******************** ***********************/
#if defined(powerc) || defined(__powerc)
#pragma options align=mac68k
#endif
struct PatHeader {
long PatternSize; // Length of pattern: standard = 64
long CompressionMode; // Compression mode, none = 'NONE'
char PatternName[ 20];
long PatBytes; // Pattern Size in Bytes
long unused2;
};
struct Command {
Byte InstrumentNo; // Instrument no
Byte AmigaPeriod; // Note, see table
Byte EffectCmd; // Effect cmd
Byte EffectArg; // Effect arg
};
struct MusicPattern
{ // Pattern = 64 notes to play
struct PatHeader header;
struct Command Commands[];
};
struct FileInstrData {
char Filename[ 32]; // Instrument's filename
long insSize; // Sample length
Byte fineTune;
Byte volume; // Base volume
short CompCode; // Compression Code, 0 = nothing, M3 = MAC3, M6 = MAC6
short freq; // Base frequence, simple, double, quadruple
Byte amplitude; // 8 or 16 bits
long loopStart; // LoopStart
long loopLenght; // LoopLength
};
struct MADSpec
{
long MADIdentification; // Mad Identification: MADG in version 2.0
char NameSignature[ 32]; // Music's name
struct FileInstrData fid[ 64]; // 64 instruments descriptor
Byte PatMax;
Byte numPointers; // Patterns number
Byte oPointers[ 128]; // Patterns list
Byte Tracks; // Tracks number
};
typedef struct MADSpec MADSpec;
#if defined(powerc) || defined(__powerc)
#pragma options align=reset
#endif